package com.pureut.order.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.pureut.order.domain.OrderSupplierManagement;
import com.pureut.order.dto.OrderSupplierManagementDto;
import com.pureut.order.export.OrderSupplierManagementExport;
import com.pureut.order.export.OrderSupplierManagementimportExport;
import com.pureut.order.vo.OrderReviewVo;
import com.pureut.order.vo.OrderSupplierManagementVo;
import io.swagger.models.auth.In;

import java.sql.SQLException;
import java.util.List;

public interface OrderSupplierManagementService extends IService<OrderSupplierManagement> {

    /**
     * 查询供应商列表
     */
    List<OrderSupplierManagementDto> getList(OrderSupplierManagementVo orderSupplierManagementVo);

    /**
     * 新增供应商
     */
    boolean addSupplier(OrderSupplierManagementVo orderSupplierManagementVo) throws Exception;

    /**
     * 冻结供应商
     */
    boolean frozenSupplier(Long id);

    /**
     * 解冻供应商
     */
    boolean thawSupplier(Long id);

    /**
     * 撤销审核
     */
    boolean revokeApproval(Long id);

    /**
     * 供应商信息导出
     */
    List<OrderSupplierManagementExport> getInfoExport(OrderSupplierManagementVo orderSupplierManagementVo);

    /**
     * 供应商导入
     */
    String importMouldData(List<OrderSupplierManagementimportExport> coCustomer);

    /**
     * 供应商删除
     */
    boolean deleteSupplierByIds(String ids) throws Exception;

    /**
     * 查看供应商信息
     */
    OrderSupplierManagementDto getSupplierById(Long id);

    /**
     * 提交审核
     */
    boolean reivewSubmit(Long id);

    /**
     * 修改供应商
     */
    boolean updateSupplierById(OrderSupplierManagementVo orderSupplierManagementVo) throws Exception;

    /**
     * 供应商审核
     */
    boolean supplierReview(OrderReviewVo orderReviewVo);
}
